package com.xydtech.ecard.ecard.mapper;

import com.xydtech.ecard.ecard.domain.EcardApiMerchantTask;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 电子名片商户任务记录Mapper接口
 *
 * @author xydtech
 * @date 2023-07-31
 */
public interface EcardApiMerchantTaskMapper {
    /**
     * 查询电子名片商户任务记录
     *
     * @param id 电子名片商户任务记录主键
     * @return 电子名片商户任务记录
     */
    public EcardApiMerchantTask selectEcardMerchantTaskById(Long id);
    /**
     * 根据商户ID和商户类型查询任务记录
     * @author yjs
     * @date 2023/7/31 17:00
     */
    public EcardApiMerchantTask getMerchantTaskByMerchantId(@Param("merchantId") Long merchantId, @Param("merchantType") String merchantType);


    /***
     * 根据商户ID和商户类型查询任务记录
     * @param merchantId
     * @return: java.util.List<com.xydtech.ecard.ecard.domain.EcardApiMerchantTask>
     * @Author: lin
     * @Date: 2024/5/10 16:41
     */
    public List<EcardApiMerchantTask> getMerchantTaskListById(@Param("merchantId") Long merchantId,
                                                              @Param("merchantType") String merchantType);

    /**
     * 查询电子名片个人/商户/企业/新型农业主体任务记录列表
     *
     * @param cmRegistId 办理人
     * @param merchantType 商户类型：1-个人，2-商户，3-企业，4-新型农业主体
     * @param search 查询条件
     * @return 电子名片商户任务记录集合
     */
    public List<EcardApiMerchantTask> getMerchantTaskList(@Param("cmRegistId") Long cmRegistId,
                                                          @Param("merchantType") String merchantType,
                                                          @Param("search") String search,
                                                          @Param("deptId") Long deptId,
                                                          @Param("phone") String phone);

    /**
     * 新增电子名片个人/商户/企业/新型农业主体任务记录
     *
     * @param ecardMerchantTask 电子名片商户任务记录
     * @return 结果
     */
    public int insertEcardMerchantTask(EcardApiMerchantTask ecardMerchantTask);
    /**
     * 修改任务记录状态
     *
     * @param ecardMerchantTask 电子名片商户任务记录
     * @return 结果
     */
    public int updateMerchantTaskSts(EcardApiMerchantTask ecardMerchantTask);
    /**
     * 修改电子名片个人/商户/企业/新型农业主体任务记录
     *
     * @param ecardMerchantTask 电子名片商户任务记录
     * @return 结果
     */
    public int updateEcardMerchantTask(EcardApiMerchantTask ecardMerchantTask);
}
